package com.ruoyi.business.domain.vo.wecom.admin;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;

@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@ApiModel("客户属性筛选客户分页查询VO")
public class TbWecomCustomerPageVO implements Serializable {

    private static final long serialVersionUID = 1L;

    @ApiModelProperty("外部联系人ID")
    private String externalUserid;

    @ApiModelProperty("客户名称")
    private String name;

    @ApiModelProperty("客户头像")
    private String avatar;

    @ApiModelProperty("客户类型 1表示该外部联系人是微信用户，2表示该外部联系人是企业微信用户")
    private Integer type;

    @ApiModelProperty("客户性别 0-未知 1-男性 2-女性")
    private Integer gender;

    @ApiModelProperty("unionid")
    private String unionid;

    @ApiModelProperty("添加时间")
    private Long addTime;

    @ApiModelProperty("外部联系人的职位，如果外部企业或用户选择隐藏职位，则不返回，仅当联系人类型是企业微信用户时有此字段")
    private String position;

    @ApiModelProperty("外部联系人所在企业的简称，仅当联系人类型是企业微信用户时有此字段")
    private String corpName;

    @ApiModelProperty("外部联系人所在企业的主体名称，仅当联系人类型是企业微信用户时有此字段。仅企业自建应用可获取；第三方应用、代开发应用、上下游应用不可获取，返回内容为企业名称，即corp_name")
    private String corpFullName;

    @ApiModelProperty("添加方式:" +
        "0\t未知来源\n" +
        "1\t扫描二维码\n" +
        "2\t搜索手机号\n" +
        "3\t名片分享\n" +
        "4\t群聊\n" +
        "5\t手机通讯录\n" +
        "6\t微信联系人\n" +
        "8\t安装第三方应用时自动添加的客服人员\n" +
        "9\t搜索邮箱\n" +
        "10\t视频号添加\n" +
        "11\t通过日程参与人添加\n" +
        "12\t通过会议参与人添加\n" +
        "13\t添加微信好友对应的企业微信\n" +
        "14\t通过智慧硬件专属客服添加\n" +
        "15\t通过上门服务客服添加\n" +
        "16\t通过获客链接添加\n" +
        "17\t通过定制开发添加\n" +
        "18\t通过需求回复添加\n" +
        "21\t通过第三方售前客服添加\n" +
        "22\t通过可能的商务伙伴添加\n" +
        "24\t通过接受微信账号收到的好友申请添加\n" +
        "201\t内部成员共享\n" +
        "202\t管理员/负责人分配")
    private Integer addWay;

    @ApiModelProperty("0:未流失 1:已流失")
    private Integer addStatus;

    @ApiModelProperty("跟进人ID列表")
    private String userIds;

    @ApiModelProperty("跟进人姓名列表")
    private String userNames;

    @ApiModelProperty("标签名称列表")
    private String tagNames;

    @ApiModelProperty("标签ID列表")
    private String tagIds;

    @ApiModelProperty("标签组名称列表")
    private String groupNames;

    @ApiModelProperty("标签组ID列表")
    private String groupIds;

}
